//用vant list组件实现的分页   需要什么数据 什么方法

// list数据列表
// 接口 查询数据的接口
// onLoad方法  
// loading
// finished

import { ref,reactive } from 'vue'

export default function usePageList(api, data) {

    let apiData = reactive(data)

    let loading = ref(false)

    let finished = ref(false)

    let list = ref([])

    let onLoad = async () => {
        let res = await api(apiData)
        // console.log(res);
        loading.value=false
        if (res.data.list) {
            list.value.push(...res.data.list)
        }
        apiData.page++ 
        // 如果当前页面  大于     最大页码 
        if(apiData.page>Math.ceil(res.data.count / apiData.limit)){
            // 以后就再也不会触发onLoad  事件
            finished.value=true
        }
    }
    return {
        onLoad,
        loading,
        finished,
        list,//分页的数据
    }
}

